var number = 5;
var obj = {
    number: 3,
    fn: (function () {
        var number;
        this.number *= 2;
        number = number * 2;
        number = 3;
        return function () {
            var num = this.number;
            this.number *= 2;
            console.log(num);
            number *= 3;
            console.log(number);
        }
    })()
}
// var myFun = obj.fn() 此时隐式绑定生效, this.number = obj.number = 3
var myFun = obj.fn;  // 此时myFun是一个单独的fn函数体，还未指向
myFun.call(null); // 此时指向myFun,this绑定全局 this.number = window.number = 5
obj.fn();
console.log(window.number); // 20 

